Tracking noise via dynamic systems with a continuum of states

ABSTRACT

A system and method reduces noise in a time series signal. A primary signal including stationary and non-stationary noise is modeled by a dynamic system having a continuum of states. A secondary signal including time series data is added to the primary signal to form a combined signal. The generic noise in the combined signal is estimated from samples of the combined signal using the dynamic system modeling the generic noise. Then, the estimated generic noise is removed from the combined signal to recover time series data.

STATEMENT OF GOVERNMENT INTEREST

[0001] The invention described herein may be manufactured and used by or for the Government of the United States of America for governmental purposes without the payment of any royalties thereon or therefor.

FIELD OF THE INVENTION

[0002] This invention relates generally to signal processing, and more particularly, methods and systems for reducing noise in time series signals.

BACKGROUND OF THE INVENTION

[0003] In the prior art as shown in FIG. 1, a signal processing system 100 is generally modeled as follows. A dynamic system 110 generates a primary signal 111. The primary signal III as used herein is a dynamic time series, e.g. human speech.

[0004] The primary signal 111 is subject 120 to a corrupting and additive secondary signal 121, e.g., stationary random, white or Gaussian noise, to produce a combined signal 122. Because the noise “looks” the same at any instant in time, it can be considered “stationary.” The problem is to substantially recover the primary 111 signal from the combined signal 122.

[0005] Therefore, in the prior art, the combined signal 122 is measured to obtain samples 130. An estimate 141 of the stationary noise is determined 140 based on an understanding or model of the dynamic system 110 that generated the primary signal 111, i.e., the speech signal. The estimated noise 141 is then removed 150 from the samples 130 to recover the primary signal 111 having a reduced level of noise.

[0006] The prior art model 100 assumes that the noise in the combined time series data 122 is the output of some underlying process. The nature or the parameters of that process may not be fully known, therefore, it is generally modeled as a random process.

[0007] Additional formulations represent what is known about the underlying primary signal. The dynamic systems 110 represent a convenient tool for such representations of the primary signal because dynamic systems can accommodate arbitrarily complex processes, diverse sources of information, and are amenable to standard analytical tools when simplified to suitable forms.

[0008] A conventional approach to estimating 140 the noise 141 affecting the combined signal 122 is to model the speech signal as an output 111 of the dynamic system 110, such as a hidden Markov model (HMM), and to estimate 140 the noise 141 based on variations of the measured signal 130 from typical output of the known underlying system 110.

[0009] Tracking dynamic systems with a continuum of states in an analytical manner becomes difficult when conditional densities of the combined signal 122 are mixtures of many component densities. Unfortunately, this is the case in most real-world systems where speech is subject to both stationary noise, and dynamic or non-stationary noise, e.g., background conversation, music, environmental acoustics, traffic, etc. This analytical intractability is primarily due to two conditions.

[0010] First, the complexity of the estimated distribution for the state of the system, as measured by the number of parameters in the system, increases exponentially over time. In addition, when the relationship between the measured output and the true output of the system is non-linear, the estimated state distributions may not have a closed form. Both of these problems are encountered in continuous-state dynamic systems used to estimate time series data.

SUMMARY OF THE INVENTION

[0011] The present invention tracks noise in an acoustic signal as a sequence of states of a dynamic system with a continuum of states. The dynamic system according to the invention is represented in a closed form. Acoustic samples generated by the system are assumed to be related to the states by a functional relation. The relationship models speech as a corrupting influence on noise. This is in contrast with the prior art, where the noise is always considered as a corruption of the underlying speech signal.

[0012] The complexity of the estimated distribution of the state of the system is reduced by sampling the predicted distribution of the state at time steps, locally discretizing the samples in a dynamic manner and propagating the thus simplified distributions in time. The non-linearity of the relation between the true and measured outputs of the system is tackled by locally linearizing the relationship around each sample of the states.

[0013] Thus, by sampling the system iteratively, an estimate of the noise can be obtained, and the noise can then be removed from the signal to provide results that improve upon prior art stationary noise models.

[0014] In stark contrast with prior art vector Taylor system (VTS) approaches, the invention assumes that it is the speech signal that corrupts the noise. The measurements of the speech-corrupted noise are non-linearly related to both the hypothetical measurements of the noise that would have been made, had there been no corrupting speech, and the corresponding measurements of the corrupting speech in the absence of noise. Note that this is totally different from the statement that the noise and the corrupting speech are non-linearly combined.

[0015] Based on this model, the invention estimates the noise from its “speech-corrupted” measurements. After the noise has been estimated, it can be removed from the input signal, using known methods, to recover the speech signal.

[0016] In one embodiment of the invention, the dynamic system is a continuous-state dynamic system, which uses linear Markovian dynamics. These represent a first order fit to any underlying dynamic system, however complex, and capture most of the salient features of the underlying system. Also, first-order parameters are fewer and can be learned robustly from a small amount of training data. In another embodiment, the system can use non-linear dynamics.

[0017] This is of immense practical value in most situations encountered in speech recognition, wherein the system must compensate for noise.

BRIEF DESCRIPTION OF THE DRAWINGS

[0018]FIG. 1 is a block diagram of a prior art signal processing system and method;

[0019]FIG. 2 is a block diagram of a signal processing method according to the invention;

[0020]FIG. 3 is a diagram of an evolution of the state distributions of a continuous state dynamic system without sampling;

[0021]FIG. 4 is a diagram of an evolution of the state distributions of a continuous state dynamic system with sampling according to the invention;

[0022]FIG. 5 is a diagram of steps of process for estimating state densities; and

[0023]FIG. 6 are graphs compare word error rates at various SNR levels for speech subject to different types of non-stationary noise.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT Generic Noise Dynamic System

[0024]FIG. 2 shows a method and system 200 for canceling noise in a signal according to the invention. The signal processing system 200 according to our invention is modeled as follows. A dynamic system 210 generates a primary signal 211. The primary signal 211 is a dynamic time series, specifically, generic noise. We distinguish generic noise from stationary noise, because generic noise can include non-stationary components, i.e., noise that is not necessarily AWG noise, such as unintelligible background conversation in a bar, on a subway, at a loud party, or on the street.

[0025] The primary signal 211 is subject 220 to a corrupting and additive secondary signal 221, specifically, a dynamic signal, such as human speech, to produce a combined signal 222. The problem is to recover the secondary signal 221 from the combined signal 222.

[0026] Therefore, according to the invention, the combined signal 222 is measured to obtain samples 230. An estimate 241 of the generic noise 211 is determined 240 based on a understanding or model of the dynamic system 210 that generated the primary signal 211. The estimated noise 241 is then removed from the samples 230, using known methods, to recover the secondary signal 221.

[0027] Our invention describes the dynamic system 200 by two equations. A state equation specifies state dynamics 210 of the system, and an observation equation relates an underlying state of the system to the measurements, i.e., samples 230 of the combined signal 222. When the state dynamics of the system are assumed to be Markovian, the state equation can be represented as

s _(t) =f(s _(t−1), ε_(t))   (1)

[0028] where the state s_(i) at time t is a function of the state at time t−1, and a driving term ε_(t), e.g., a Gaussian excitation process. The output of the system at any time is usually assumed to be dependent only on the state of the system at that time.

[0029] The observation equation can be represented as

[0030]o _(t) =g(s _(t), γ_(t))   (2)

[0031] where o_(t) is the observation at time t and γ_(t) represents the noise affecting the system at time t.

[0032] In many cases, the best set of state and observation equations required to model the system 200 accurately can be quite complex, making the estimation of the state from the observations 230 intractable. In addition, the estimation of the parameters of the system can be very difficult from a finite amount of data. For these reasons, it is often advantageous to approximate the dynamics with a simple first-order system.

[0033] In keeping with this argument, we model the dynamics of the system 210 whose states are log-spectral vectors of noise expressed as

n _(t) =An _(t−1)+ε_(t)   (3)

[0034] where n_(t) represents the noise log-spectral vector at time t, A represents a parameter of an auto-regressive model (AR), and ε_(t) represents the Gaussian excitation process. The AR model is of order one and assumes that the sequence of noise log-spectral vectors can be modeled as the output of a first-order AR system excited by a zero mean Gaussian process. The AR parameter A and the variance φ_(ε) of ε_(t) can all be learned from a small number of representative noise samples. The mean of ε_(t) is assumed to be zero.

[0035] The log-spectral vectors of noisy samples y_(t) 230 are related to the state of the dynamic system by n_(t) 210 and the log-spectra of the corrupting speech 221 by

y _(t) =f(x _(t) , n _(t))=x _(t)+log(1+exp(n _(t) −x _(t)))=x _(t) +l(x _(t) , n _(t))   (4)

[0036] Equations (3) and (4) represent the state and observation equations of the system 210 respectively.

[0037] Having thus represented the dynamic system 210, we next need to determine the state of the dynamic system, namely the noise 211, given only the sequence of samples 230, the parameters of the state equation A and φhd ε, and the distribution of x_(t).

[0038] We model the distribution of x_(t) by a mixture Gaussian density of the form $\begin{matrix} {{P\left( x_{t} \right)} = {\sum\limits_{k = 1}^{K}{c_{k}{N\left( {{x_{t};\mu_{k}},\sigma_{k}} \right)}}}} & (5) \end{matrix}$

[0039] where c_(k), μ_(k) and σ_(k) represent the mixture weight, mean and variance respectively of the Gaussian mixture, and the function N( ) represents the Gaussian.

Noise Estimation

[0040] The sequence of observations, e.g. the samples 230 y₀, . . . , y_(t) as y_(0,t). The a posteriori probability distribution of the state of the system at time t, given the sequence of observations y_(0,t) 230 is obtained through the following recursion: $\begin{matrix} {P\left( {{n_{t}\left. y_{0,{t - 1}} \right)} = {\int_{- \infty}^{\infty}{P\left( {n_{t}\left. n_{t - 1} \right){P\left( {n_{t - 1}\left. y_{0,{t - 1}} \right){n_{t - 1}}} \right.}} \right.}}} \right.} & (6) \end{matrix}$

P(n _(t) |y _(0,t))=CP(n _(t) |y _(0,t−1))P(y _(t) |n _(t))   (7)

[0041] where C is a normalizing constant.

[0042] Equation 6 is referred to as a prediction equation and equation 7 as an update equation. P(n_(t)|y_(0,t−1))) is the predicted distribution for n_(t) and P(n_(t)|y_(0,)) is the updated distribution for n_(t). When the dynamic system is linear, equation 6 is readily solvable. When the dynamic system is non-linear, equation 6 can be solved by first linearizing the first term (P(n_(t)|n_(,t−1))) of the integral in equation 6.

[0043] The problem is to estimate the updated distribution. We refer to recursions of Equation 6 and Equation 7 as the Kalman recursion.

[0044] From Equation 3, because ε_(t) has a Gaussian distribution, the conditional density of n_(t) given n_(t−1) is

P(n _(t) |n _(t−1))=N(n _(t) ;An _(t−1), φ_(ε))   (8)

[0045] The speech vector at any time t may have been generated by any of the K Gaussians in the Gaussian mixture distribution in Equation 5, with a probability c_(k), and therefore $\begin{matrix} {P\left( {{y_{t}\left. n_{t} \right)} = {\sum\limits_{k = 1}^{K}{c_{k}{P\left( {y_{t}\left. {n_{t^{*}}k} \right)} \right.}}}} \right.} & (9) \end{matrix}$

[0046] where P(y_(t),{n_(t),k) is the probability of y_(t), conditioned on n_(t), and given that the speech vector was generated by the k^(th) Gaussian in the mixture.

[0047] It can be shown that $\begin{matrix} {P\left( {{y_{t}\left. {n_{t},k} \right)} = \frac{N\left( {{{f^{- 1}\left( {y_{t},n_{t}} \right)};\mu_{k}},\sigma_{k}} \right)}{\frac{y_{t}}{x_{t}}}} \right.} & (10) \end{matrix}$

[0048] where f⁻¹ is the inverse function that derives y, as a function of x_(t), and n_(t), and the Jacobian determinant of y_(t) in the denominator is the determinant of the derivative of y_(t) with respect to x_(t).

[0049] Both f¹ and the Jacobian are highly non-linear functions, as a result of which P(y_(t),|n_(t),k) has a form that leads to complicated solutions. In order to avoid this complication, we approximate Equation 4 by a truncated Taylor series, expanded around the mean of the k^(th) Gaussian:

l(x _(t) , n _(t))=l(μ_(k) , n _(t))+l′(μ_(k) , n _(t))(x _(t)−μ_(k))+  (11)

[0050] Higher order terms are not shown in the Equation 11. We truncate

[0051] this series after the first term, to obtain

l(x _(t) , n _(t))≈l(μ_(k) , n _(t))   (12)

[0052] which can be used to derive P(y_(t),|n_(t),k) as

P(y _(t) |n _(t) , k)=N(y _(t);μ_(k) +l(μ_(k) , n _(t)), σ_(k))=N(y _(t) ;f(μ_(k) , n _(t)), σ_(k))   (13)

[0053] We could truncate the series expansion in Equation 11 after the first order term, and P(y_(t),|n_(t),k) would still be Gaussian. However, inclusion of higher order terms in the approximation will result in more complicated distributions for P(y_(t),|n_(t),k).

[0054] It is important to note that the approximation in Equation 12 is specific to the k^(th) Gaussian. Combining Equation 13 with Equation 9, we get the approximation of P(y_(t),|n_(t),) $\begin{matrix} {P\left( {{y_{t}\left. n_{t} \right)} = {\sum\limits_{k = 1}^{K}{c_{k}{N\left( {{y_{t};{f\left( {\mu_{k},n_{t}} \right)}},\sigma_{k}} \right)}}}} \right.} & (14) \end{matrix}$

[0055] The Kalman recursion mentioned above is initialized using the a priori distribution of the noise

P(n ₀ |y _(0.−1))=P(n ₀)   (15)

[0056] While it is now possible to now run the Kalman recursion by direct computations of Equations 6 and 7, this results in an exponential increase in the complexity of the updated distribution for the vectors n_(t) with increasing time t, as shown in FIG. 3. In general, the estimated distribution of the vectors n, are a mixture of K^(t+1) Gaussians with continuous densities as shown in FIG. 3.

[0057] The problem could be simplified by collapsing the Gaussian mixture distribution for P(y_(t),|y_(0,t)) into a single Gaussian at every step. However this leads to unsatisfactory solutions and poor tracking of the noise.

Sampling the Predicted State Density

[0058] Instead, as shown in FIG. 4, we use sampling methods to reduce the problem. The complexity of the a posteriori noise distribution is reduced by discretizing the predicted noise density at each time step. The predicted noise density is sampled to generate a number of noise samples. The continuous density is then represented by a uniform discrete distribution over these generated samples $\begin{matrix} {P\left( {{n_{t}\left. y_{0,{t - 1}} \right)} \approx {\frac{1}{N}{\sum\limits_{k = 0}^{N - 1}{\delta \left( {n_{t} - n^{k}} \right)}}}} \right.} & (16) \end{matrix}$

[0059] where n^(k) is the k^(th) noise sample generated from the continuous density, and N is the total number of samples generated from it. Thereafter, the update equation simply becomes $\begin{matrix} {P\left( {{n_{t}\left. y_{0,t} \right)} = {C{\sum\limits_{k = 0}^{N - 1}{P\left( {y_{t}\left. n^{k} \right){\delta \left( {n_{t} - n^{k}} \right)}} \right.}}}} \right.} & (17) \end{matrix}$

[0060] where C is a normalizing constant that ensures that the total probability sums to 1.0. P(y_(t),|n^(k)) is computed using Equation 14. The prediction equation for time t+1 becomes: $\begin{matrix} {P\left( {{n_{t + 1}\left. y_{0,t} \right)} = {C{\sum\limits_{k = 0}^{N - 1}{P\left( {y_{t}\left. n^{k} \right){P\left( {n_{t + 1}\left. n^{k} \right)} \right.}} \right.}}}} \right.} & (18) \end{matrix}$

[0061] This is a mixture N of distributions of the form P(n_(t+1)|n^(k)). This is once again sampled to approximate it as in Equation 16. The overall process is summarized in the five steps shown in FIG. 5.

Compensating for Noise

[0062] The noise estimation 240 process described above estimates, for each frame of incoming combined signal 222, a discrete a posteriori distribution of the form $\begin{matrix} {P\left( {{n_{t}\left. y_{0,t} \right)} = {C{\sum\limits_{k = 0}^{N - 1}{P\left( {y_{t}\left. n^{k} \right){\delta \left( {n_{t} - n^{k}} \right)}} \right.}}}} \right.} & (19) \end{matrix}$

[0063] For any estimate of the noise, n^(k), we estimate x_(k), which is the log spectrum of the speech signal 211, from the log spectrum of the observed noisy speech signal 211, using an approximated minimum mean squared estimation (MMSE) procedures: $\begin{matrix} {{\hat{x}}_{t}^{k} = {y_{t} - {\sum\limits_{j = 1}^{K}{p\left( {j\left. {y_{t},n^{k}} \right){f\left( {\mu_{j},n^{k}} \right)}} \right.}}}} & (20) \end{matrix}$

[0064] where p(j|y_(t), n^(k)) is given by $\begin{matrix} {{p\left( {\left. j \middle| y_{t} \right.,n^{k}} \right)} = \frac{c_{j}{N\left( {{y_{t};{f\left( {\mu_{j},n^{k}} \right)}},\sigma_{j}} \right)}}{\sum\limits_{i = 1}^{K}{c_{i}{N\left( {{y_{t};{f\left( {\mu_{i},n^{k}} \right)}},\sigma_{i}} \right)}}}} & (21) \end{matrix}$

[0065] Combining Equations (19) and (20), we get the overall estimate for x_(t) as $\begin{matrix} {{\hat{x}}_{t} = {y_{t} - {C\quad {\sum\limits_{k = 0}^{N - 1}{{P\left( y_{t} \middle| n^{k} \right)}{\sum\limits_{j = 1}^{K}{{p\left( {\left. j \middle| y_{t} \right.,n^{k}} \right)}{f\left( {\mu_{j},n^{k}} \right)}}}}}}}} & (22) \end{matrix}$

EFFECT OF THE INVENTION

[0066]FIG. 6 compares speech recognition test results obtained in the presence of four types of generic noise as a function of SNR and the x-axis. The test data includes Spanish telephone recordings corrupted by background noise including inarticulate and imperfect speech recorded in a bar, i.e., “babble” 601, subway 602, music 603, and traffic 604. Word error rates (WERs) on the y-axis are compared for baseline uncompensated speech 611, the prior art VTS method 612 and the dynamic system according to the invention 613.

[0067] It can be seen that all methods are effective at improving recognition performance at low SNRs. At low SNRs, it is advantageous to eliminate even an average (stationary) characteristic of the noise, regardless of the non-stationary nature of the noise.

[0068] However, at higher SNRs, the prior art VTS method begins to falter, because the noises are non-stationary. At these SNRs, recognition performance with VTS-compensated speech is actually poorer than that obtained with the base line uncompensated noisy speech.

[0069] In contrast the method according to the invention is able to cope with the non-stationarity of the noise at all SNRs, and performs consistently better than the prior art VTS method. Even at SNRs higher than 20 dB, where the speech is essentially “clean,” the invented method does not degrade performance to a perceptible degree.

[0070] The invention results in more reduction in the level of the noise in the final estimate of the speech signal as compared to the prior-art VTS method. The invention improves the noise level effectively by a factor of between 2 and 3, i.e., up to 5 dB, as compared with the prior art VTS method.

[0071] The method and system according to the invention uses more information about the noise signal than prior art models. Those generally assume that the noise is stationary. However, the amount of explicit information required about the noise is small, due to the simple first order model assumed for the dynamics.

[0072] Even this small amount of information enables the invention to track the noise well. In the examples used to described the invention, the type of noise corrupting the speech signal was assumed to be known. However, in a more generic case, this may not be known. In such applications, one solution has several different dynamic systems trained on a variety of noise types.

[0073] The most appropriate model for the noise type affecting the signal can then be identified using system or model identification methods where the speech log-spectra are modeled as the output of an IID process. They can also be modeled by an HMM, without any significant modification of the process. As an extension to the invention, we can treat the systems generating the speech and the noise as coupled dynamic systems, and the entire process can be appropriately modified to simultaneously track both speech and noise.

[0074] The dynamic system modeling the noise can itself also be extended. For example, above, the AR order for the dynamic system is assumed to be one. This can easily be extended to higher orders. Additionally, the dynamic system can be made non-linear without major modifications to invention.

[0075] It should also be noted that the invention can operate as a single pass on-line process, as opposed to the prior art off-line processes, such as VTS, that require multiple passes over the noisy data. Furthermore, being on-line, the method can be performed in real-time.

[0076] The invention estimates the noise at each instant of time without reference to future data enabling for the compensation of data as they are encountered. Furthermore, it should be understand that the invention can be used for any time series signal subject to noise.

[0077] Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention. 

We claim:
 1. A method for reducing noise in a time series signal, comprising: modeling generation of a primary signal by a dynamic system with a continuum of states, the primary signal including generic noise; adding a secondary signal to the primary signal to form a combined signal, the secondary signal including time series data; estimating the generic noise in the combined signal using the dynamic system; and removing the estimated generic noise from the combined signal to recover the secondary signal.
 2. The method of claim 1 wherein the generic noise includes stationary and non-stationary noise.
 3. The method of claim 1 wherein the secondary signal is an acoustic signal.
 4. The method of claim 3 wherein the acoustic signal is a speech signal.
 6. The method of claim 1 wherein the dynamic system includes a continuum of states.
 7. The method of claim 1 further comprising: sampling the continuum of states at time steps to obtain an estimated distribution of the primary signal.
 8. The method of claim 7 further comprising: locally linearizing a non-linear relationship between the primary signal and the combined signal around each sample of the combined signal.
 9. The method of claim 1 wherein the estimating and removing are performed in on-line during a single pass on the combined signal.
 10. The method of claim 1 wherein the dynamic system is represented in a closed form.
 11. The method of claim 4 wherein the secondary signal is assumed to corrupt the primary generic noise signal.
 12. The method of claim 1 wherein the dynamic system uses linear Markovian dynamics.
 13. The method of claim 12 further comprising: learning first-order parameters of the Markovian dynamics from training data.
 14. The method of claim 1 wherein the dynamic system is modeled by a state equation s _(t) =f(s _(t−1), ε_(t)) where a state s_(i) at a time t is a function of a state at a time t−1, and ε_(t) is a driving term, and the combined signal is modeled by an observation equation o _(t) =g(s _(t), γ_(t)), where σ_(i) is a sample at time t, and γ_(t) represents the primary signal at time t.
 15. The method of claim 14 wherein log-spectral vectors of the primary signal are expressed as n _(t) =An _(t−1) +ε _(t,) where n_(t) represents a particular log-spectral vector at time t, A represents a parameter of an auto-regressive model, and ε_(t) represents the Gaussian excitation process.
 16. The method of claim 9 further comprising: performing the estimating is done in real-time.
 17. The method of claim 1 wherein the dynamic system uses non-linear Markovian dynamics.
 18. A method for reducing noise in a combined signal, the combined signal including time series data and generic noise, comprising: estimating the generic noise in the combined signal using a dynamic system modeling the generic noise, the dynamic system having a continuum of states; and removing the estimated generic noise from the combined signal to recover the time series data.
 19. The method of claim 18 wherein the generic noise includes stationary and non-stationary noise.
 20. A system for reducing noise in a time series signal, comprising: a dynamic system configured to model a generation of a primary signal including generic noise, the dynamic system having a continuum of states; means for adding a secondary signal to the primary signal to form a combined signal, the secondary signal including time series data; means for estimating the generic noise in the combined signal using the dynamic system; and means for removing the estimated generic noise from the combined signal to recover the secondary signal. 